Copyright: Copyright © 1994 Software Interface Solutions Corp


Contents
Table of Contents

Introduction

Installation

System Requirements

Installing The Program

Creating Ribbons

The Ribbon Faceplate

Attaching a Ribbon to an Application

Saving a Ribbon

The Ribbon

Ribbon Overview

The Ribbon Frame

Switching Tasks

The Frame Menu

The Ribbon Edit Menu

Desktop Ribbon

Buttons

Inserting Buttons

Dragging Buttons

Editing Buttons

Changing a Button Face

Macros

Recording Macros

Macro Properties

Launching Applications

Managing Ribbons

Editing Ribbons

Ribbon Options

Application Links

Copying Ribbon Files

Deleting a Ribbon

Editing Macros

Editing a Macro

Macro Syntax

Macro Timing


Ribbon Options : Close

Closes the Ribbon Options Dialog Box.


Ribbon Options : Close RibbonCB Application

This will close the RibbonCB application, removing current ribbons from all applications. You will be given the option to cancel the operation and/or save any changes made to any ribbons.


Ribbon Options : Hide RibbonCB When Minimized

HIdes the RibbonCB icon when the faceplate is minimized.


Introduction

Software Interface Solutions' RibbonCB program is a universal version of the control bars that are increasingly prevalent in today's Windows applications. These control bars afford a significant time savings by allowing you to invoke various program functions with a single mouse click, rather than searching through the menu hierarchy for the operation you want.

Example of a Ribbon
in MS-Write.

Click in the Ribbon for an
overview of operation.

The problem is that most of the buttons in these control bars are operation-specific. That is, their functions are predefined and cannot be changed. And in the limited number of programs that do permit some level of button customization, each control bar employs a unique user interface and different options that must be learned. You have to learn only one interface with RibbonCB.

RibbonCB is a consistent and customizable control bar that can be embedded into virtually any Windows application. Once attached, it becomes an integral part of the program, positioning itself seamlessly within the application without covering any of your valuable workspace. Once saved, your custom Ribbon will automatically load every time its host application is launched.

With RibbonCB, you can select which Buttons are in the Ribbon, what they look like, how many there are, how they are arranged and, most importantly, their functionality. Each Button's purpose is defined by recording a series of actions or events through keyboard and/or mouse inputs. These macros then can be played back simply by clicking on the Button. If you know how to access application functions, you already know how to automate the process with a macro. All you have to do with RibbonCB is start a recording session, perform the task and then terminate recording. You now have a macro to do the job for you with a single mouse click.

You can use Buttons to select a single menu function or to perform multiple tasks. On a more labor-intensive scale, you can automate lengthy procedures like filling in repetitive fields in a standardized form.

Some of RibbonCB's features are:

• · Your custom Ribbons load automatically after they are initially attached to the application and saved.

• · Your Ribbon can operate in concert with any existing control bars.

• · Ribbons can be anchored in a fixed location or floated and positioned wherever convenient to conserve valuable workspace.

• · Launch applications from within any Windows applications.

• · Virtually instantaneous task switching between all active applications.

• · Each Ribbon can accommodate up to 80 Buttons.

• · Assign macros to keystroke combinations and unused mouse buttons.

• · Buttons and groups of Buttons, and their associated macros, can be dragged and dropped within a Ribbon or between Ribbons.

• · User-entered comments are displayed for each Button by placing the mouse pointer on them.

• · Macros can be easily edited in a text format; Button faces can be altered at the pixel level.

You can use the companion Button program to further customize your Ribbons by creating your own collections of Button faces. Graphic images can be captured from anywhere on the monitor, including existing control bars, and turned into Buttons for use within RibbonCB.  You may also use Button to lift and scale images from the screen and then send them to the clipboard or disk files for general use.

Software Interface Solutions Corp. is dedicated to providing simple yet powerful utilities to all levels of Windows users. We are interested in any suggestions or unusual uses you find for our products. If you have any questions about RibbonCB, call our customer service department at: (303) 651-7646.


Ribbon Faceplate

The Faceplate is the initial RibbonCB display and the screen under which general program functions are conducted. It furnishes access to such operations as loading Ribbons onto applications, saving them, accessing on-screen help and quitting the program.

The RibbonCB Faceplate offers the following options:

Load 	Allows a Ribbon to be attached to a Windows application.

Scan	Scans the hard disk and then reattaches any closed Ribbons to their host applications.

Save All 	Saves all currently active Ribbons to disk.

Close 	Quits the RibbonCB program. This will remove all Ribbons from their host application windows.

Min	Minimizes the RibbonCB window.

Applications 	Displays the Application Links dialog box allowing individual Ribbons to be copied, deleted or disabled.

Overview 	Presents general information on the RibbonCB program and its operation.

About 	Displays RibbonCB version and serial numbers, and Software Interface Solutions Corp. copyright information.

Help	Presents the Help Index.


System Requirements

The following minimum system configuration is required to run RibbonCB:

IBM® PC or compatible

1 Mb of RAM

1 Mb of hard disk space

Floppy disk drive

Mouse

VGA Monitor and graphics card

Microsoft Windows™ Version 3.1


Installing RibbonCB
Installing RibbonCB to your Computers Hard Disk

RibbonCB installs itself from the program diskette and can be operational in a matter of minutes. Its use is optimized with a mouse, although it does accept equivalent keyboard commands.

The first step with any software installation should be to make a backup copy of the original program diskette. This permits the original to be put aside for safekeeping and the installation performed using the backup copy of the program. Refer to your Windows User's Guide for instructions on generating a backup.

To install RibbonCB:

1.  Insert the backup program diskette into the floppy (A:) drive.

2.  Select File within Program Manager.

3.  Select Run from the File Menu and a Run dialog box is displayed.

4.  Type A:\SETUP in the Command Line.

5.  Click Ok and the following dialog box is displayed:

6.  The setup defaults to the C: drive, but RibbonCB may be installed wherever it is convenient. Specify an alternate path, if desired.

7.  Click Ok  and the RibbonCB and Button programs are installed at the specified hard drive location.


Installing a Ribbon to an Application
Attaching a Ribbon to an Application

RibbonCB is supplied with several predefined Ribbons, as well as a file named sample.rcp that may be used as a template to create your own Ribbons. When installing a new Ribbon, you will generally start with a template and then edit it to create custom Ribbons for your applications. You may also attach Ribbons that you have created to other applications by making a copy of it through the Application Links Dialog Box and then using the same installation procedure to attach it to the desired application.

To attach a Ribbon to an application:

1.  With the desired application's window open, select Load from the RibbonCB Faceplate. The pointer becomes a cursor, its arrow indicating where it is OK to attach the Ribbon and where it is NOT.

This cursor indicates the application can accept a Ribbon.

This cursor indicates the application will not accept a Ribbon.

2.  Position the point of the arrow within the title bar of the target application to ensure that the Ribbon is attached to the appropriate window. The cursor should state that it is "OK" to attach the Ribbon.

3.   Single-click the left mouse button and a File Selection dialog box is displayed that lists all of the existing Ribbon files (identified by an .rcp extension) within the current directory. Each .rcp file identifies a set of files that contain all of the attributes, including macro definitions, of the particular Ribbon.

4.  Select the desired file and that Ribbon is attached to the application's window. Your Ribbon is now ready to customize and use. You may add and remove Buttons, change their faces and alter their groupings through the Ribbon Edit Menu (see Chapter 4).


Saving a Ribbon

You may edit a Ribbon at any time without leaving its host application. Any changes you make are in effect only for the current application session. You must save the changes to disk for the changes to be in effect the next session.

Note that RibbonCB keeps track of the database file names internally and transparently and you are not asked to name a set of Ribbon files.  You may however make a copy of the database files for backup or sharing purposes.  See Ribbon Application Links screen for details.

You may save a Ribbon from a few places in the Ribbon interface. The reason for this is so you can save any changes from where you currently are without having to go to some specific screen to make the save.

Saving a Ribbon Method 1

Each of the three Macro Dialog Boxes,  Button Macro Dialog Box,  Keyboard Macro Dialog Box and  Mouse Macro Dialog Box contain a Save button that will save the ribbon.

Saving a Ribbon Method 2

The Ribbon Options Dialog Box contains a Save button.

Saving a Ribbon Method 3

The Ribbon Edit Menu contains a Save Ribbon Entry.

Saving a All Ribbons

If you are attaching or modifying multiple Ribbons at the same time, you can preserve your changes globally by using the Save All selection on the RibbonCB Faceplate.


Ribbon Frame

The Ribbon Frame is the Gray background area of a Ribbon. Through the Ribbon Frame you can access the Ribbon's functionality. See Ribbon Overview for details.


Ribbon Overview

Index Buttons,  User Buttons,  Ribbon Frame,  Mouse Usage

A Ribbon is comprised of as many as 80 individual User Buttons, each of which can have a distinct macro assigned to it. User Buttons can launch applications, perform a simple function or execute a complicated and repetitious task.

Once attached to an application, a Ribbon can be tailored to your specific needs. Buttons (and macros) may be added, deleted and organized quickly and easily without leaving the host application. The Ribbon can be floated and repositioned anywhere on the screen. It can also be displayed as either a single or a double row of Buttons by dragging its bottom border.

A Ribbon consists of the following elements:

Index Buttons :

Scrolls Button groups in the designated direction.

Scrolls to user-tagged Buttons in the designated direction.

The Index Buttons may be hidden through the Ribbon Options Dialog Box.

User Buttons :

These are the buttons the user selects to be in the Ribbon and assign macros to.	As an example:

Ribbon Frame :

The background area of a Ribbon. The frame provides access to all of the Ribbons functionality through menus accessed by single left or right mouse clicks.

Mouse Functions in a Ribbon

The following mouse buttons perform the following actions:

Left single click :

in Ribbon Frame :	Displays the Frame Menu. The Frame Menu provides access to all of Ribbons functionality.

in User Button :	Run macro associated with button if macro exists.

Left double click :

in Ribbon Frame :	Display the  Tasks Dialog Box containing the icons of all running tasks.

in User Button :	Run macro associated with button if macro exists and button has been set to activate on a double click.

Right single click :

in Ribbon Frame :	Display the Frame Menu or the Ribbon Edit Menu. You may select which menu displays. The Ribbon Edit Menu allows you to insert buttons, delete buttons, etc.

in User Button :	Display the Button Shortcut Menu. This menu contains the most used function from the Button Macro Dialog Box allowing you to bypass the dialog box for many User Button functions. For example you can start recording a macro from the Button Shortcut Menu.


Ribbon Options Dialog Box

The Ribbon Options Dialog Box allows you to control certain visual and functional aspects of the ribbon. Click on a control for more information about that control.


Frame Menu

The Frame Menu is accessed with a single left-click in the Ribbon's Frame (gray background) area.

Click on an item for more information.


Tasks Dialog Box

Access the Tasks Dialog Box by double clicking in the background frame area of a Ribbon, or selecting the Tasks... item from the Ribbon Frame Menu.

When the Tasks dialog box is displayed the following mouse operations apply:

Single click on an icon to see the name of the application. This operation is illustrated at the left for Program Manager.

Double click on an icon to switch to that task.

Single click outside the workspace area of the dialog box to close the Tasks Dialog Box.


Ribbon Edit Menu

Access the Ribbon Edit Menu with a single right-click in the Ribbon frame, or by selecting Ribbon Edit Menu from the Ribbon Frame Menu. Click on an item for more information about that item.


Button Shortcut Menu

The Button Shortcut Menu is accessed with a single right-click on a User Button. You can use this menu to access the most frequently used functions in the Button Macro Dialog Box.

Click on an item for more information.


Button Macro Dialog Box

The Button Macro Dialog Box contains controls for creating and editing Buttons and their macros. You may access this dialog box through the Ribbon Frame Menu or the Button Shortcut Menu. Click on a control for more information about that control.


Application Links Dialog Box

The Application Links Dialog Box lists all applications that have Ribbons assigned to them. From here, you may copy Ribbons for backup or sharing purposes, delete Ribbons from applications and control the Ribbon's auto-loading features.


Mouse Macro Dialog Box

The Mouse Macro Dialog Box contains controls for creating and editing Mouse macros. You may access this dialog box through the Ribbon Frame Menu. Click on a control for information about that setting.


Keyboard Macro Dialog Box

The Keyboard Macro Dialog Box contains controls for creating and editing keyboard macros. You may access this dialog box through the Ribbon Frame Menu. Click on a control for more information about that setting.


Desktop Ribbon, Activate

This menu selection brings the Desktop Ribbon (if defined) to the top of the screen. A Desktop Ribbon generally contains your most often used applications for launching or task switching.


Pixel Editor

The Pixel Editor allows you to edit a Button face at a pixel level, or select a Button face from a library of Button files provided with RibbonCB. You may also lift bitmaps directly off the screen, including button faces from other tool bars, for use as Ribbon Button faces.

Click on a control for more information about that setting.


Switching Tasks

You can switch to other active tasks in two manners from a Ribbon.

1. Double left click in the background frame of a Ribbon. This will bring up the Tasks Dialog Box. From here you may switch to a different task.

2. Left click on a Ribbon User Button which has assigned to it a Windows application. You will directly switch to that task if it is running. If it is not running the application will be launched.


Application Links : Sort

By Filename: 	Sort the list box using the name of the application only.

By Directory: 	Sort the list box using the full directory name of the application.

Active Ribbons Only: 	Show only the applications that are currently running.


Ribbon Options : Borders

Borders

You may add a 1 pixel border to any side of a ribbon to enhance the appearance of a ribbon in certain instances.


Ribbon Options : Ribbon Placement

Ribbon Placement

This option allows you to specify where the ribbon resides in its host application window.


Ribbon Options : Right Mouse Button

Right Mouse Button

This option allows you to assign the Ribbon Edit Menu (default) or the Ribbon Frame Menu to a right mouse click within the Ribbon Frame. Note that this control affects all ribbons.


Ribbon Options : Disable Key/Mouse Macros

Disable Mouse Macros: Disables all Mouse Macros for the current Ribbon.

Disable Keyboard Macros: Disables all Keyboard Macros for the current Ribbon.


Ribbon Options : Hide Index Buttons

Hide Index Buttons

This option allows you to hide the Index Buttons, replacing them with the symbol  [image]. The significance of the symbol is that it identifies this particular toolbar as a RibbonCB ribbon, and gives you a convenient location to access the ribbons menus and task list from.


Ribbon Options : Show Unrecorded Buttons
Show Unrecorded Buttons

When this control is checked, any buttons not having macros assigned to them will be displayed without a black border. This gives visual feedback as to which buttons are currently not being used.


Ribbon Options : Desktop Ribbon Always On Top

Desktop Ribbon Always On Top

If a Desktop Ribbon has been created, checking this option always places it on top of standard windows. Any non-maximized windows are shifted so that they are not obscured by the Desktop Ribbon. When standard windows are maximized, RibbonCB changes their size so neither the Desktop Ribbon nor the maximized window are obscured. Note that these modifications do not occur for certain classes of windows.


Ribbon Options : Remove This Ribbon

Remove This Ribbon For This Session

This option removes the Ribbon from its host application for this session of the application. You must close the host application and restart it ,or use the Scan function from the Ribbon Faceplate, in order to reattach the Ribbon to its host application. Note that this function is not the same as Hiding a Ribbon.


Ribbon Options : Save Ribbon

Save Ribbon

This option saves any changes made to the current Ribbon to disk. You can also use the Save Ribbon selection in the Ribbon Edit Menu. If you are updating more than one Ribbon you can use the Save All selection in the RibbonCB  Faceplate to save all active Ribbons to disk.


Working with Tabs

Tabs can be considered as containers for buttons. Clicking on a tab causes the buttons contained in that tab to show in the toolbar and all other buttons to be hidden. This allows you greater flexibility in organizing buttons within your toolbar.

When you create the first tab in a toolbar, all of the buttons in the toolbar are assigned to that tab. As you create more tabs they are created with no buttons assigned. To place buttons in the tabs, drag single buttons or groups of buttons to the particular tab and drop them. As you do this, the buttons will disappear from the toolbar and are assigned to that tab.

This figure shows buttons being dropped on a tab.

After tabs have been created you may right click on a tab and receive the Tab Menu. The tab menu allows you to rename, shift left or right or delete tabs. If you delete a tab you will be prompted to select the existing tab you would like the buttons assigned to.

The tab menu:


Editing a Macro

When you record a macro, both the events and the timing between events are recorded. You may edit either the events in a macro and/or the timing values between the events. The events and timing values are presented in text form. You can initiate an editing session through the various Macro Dialog Boxes or the Button Shortcut Menu.

Note that the timing issues are for more advanced users and are optional.


Ribbon Faceplate : Scan

This function is used to scan all currently running applications and reattach their associated Ribbons. Note that this function is normally unnecessary as Ribbons load automatically when their host applications are launched. The only time this function is used is if you have closed the Ribbon for the current session of its host application (through the Ribbon Options Dialog Box), or under certain conditions such as debugging sessions where the normal flow of messages between Windows and applications might be altered.


Hiding a Ribbon

Hold down the Ctrl key and left-click in the host application's Caption or Title Bar to temorarily hide a ribbon; repeating this operation restores the ribbon.


Host Application

The application to which a Ribbon isattached.


Ribbon Faceplate : Save All

This function saves all active Ribbons to disk.


Application Links : Auto Load

This function disables the Ribbon's auto load feature for the application that is highlighted in the list box, or globally for all Ribbons.


Application Links : Delete

This deletes the link between an application and its Ribbon as well as the associated Ribbon database files. Use the Copy function from this dialog box if you want to use these files in the future.


Application Links : Copy

RibbonCB maintains all file names internally and is transparent to the user. You may use this function to make a copy or backup of the database files for archiving or sharing purposes. You are prompted for a filename for these copied files.


Application Links : List Box

The list box contains an entry for each application that has a Ribbon associated with it.


Application Links : Pathname

The full pathname of the application selected in the list box.


Application Links : Icon

The icon of the application currently selected in the list box.


Application Links : ID

The internal ID number of the application currently selected in the list box. This information may be used by Software Interface Solutions' customer service department.


Application Links : Class Name

This displays the class name of the application window currently selected in the list box. This information may be used by Software Interface Solutions' customer service department.


Application Links : Select

This function displays a dialog box showing the icons of all the applications in the list box. Double-click on any of these icons to select that application in the list box. Click anywhere outside the workspace area to close the dialog box.


Button Macro Dialog Box : Activation Clicks

This control allows you to select a single- or a double-click of a Button to activate its functionality.


Button Macro Dialog Box : Button Selector

This control selects the next or previous Button as the current Button. You may also click on any Button in the host Ribbon to choose it as the current Button.


Button Macro Dialog Box : Button Face

Displays the currently selected Button.


Button Macro Dialog Box : Change Face

This control allows you to select from a library of Button Face files. Some Button files are supplied with the RibbonCB program  disk or you can create your own (see Button Face Window).

You may update multiple Buttons from this Window by simply left-clicking on the Button you wish to change. That Button then becomes the current Button in the Button Macro Dialog Box; left-click on a Button in this Window and it replaces the one you selected.

You may use the Pixel Editor to edit any Button face at the pixel level by accessing it through the Ribbon Edit Menu.


Button Macro Dialog Box : Clear Tags


Button Macro Dialog Box : Tags

You may tag Buttons by checking the Tag control. Tagged buttons are scrolled by using the double Index Buttons and the tagged button  becomes the first Button in the Ribbon. The remaining Buttons shift accordingly.

Clear Tags clears all tags for the Ribbon.


Macro Dialog Box : Start Recording

This control starts a macro recording session.  When recording a macro to a User Button, that Button  flashes to indicate that your inputs are being saved. If recording a macro to a mouse button or keyboard sequence, a status window appears on the Ribbon indicating that a recording session is in progress. Click on the flashing Button (or status window), or press the Ctrl and Break keys simultaneously, to end the recording session.


Macro Dialog Box : Comment

You may enter a description of the macro here. For User Buttons, this description is automatically displayed when you place  the mouse pointer on a Button.


Macro Dialog Box : Macro

This box is checked if the record/playback object in the dialog box has a macro assigned to it.


Macro Dialog Box : Save

This control saves all current changes made in the Ribbon to disk.


Macro Dialog Box : Close

This control closes the Macro dialog box and saves any changes to memory. You must save the Ribbon to disk using the Save control in this dialog box to have your changes available for the next session.


Macro Dialog Box : Options

This selection expands the dialog box to display additional controls for this record/playback object. These optional controls are not visible when the dialog box is first invoked.


Macro Dialog Box  : Delete

This control allows you to delete a macro associated with a User Button, mouse button or keyboard sequence. If you simply want to change a macro, you can either edit or rerecord it.


Macro Dialog Box : Edit

This control displays the Macro Edit Window allowing the macro to be edited in a text format.


Macro Dialog Box : Repeat Count

This control determines the number of times the macro is run (usually once). Typing the keyword Ask in this field presents a dialog box each time the macro is invoked that requests the number of times the macro is to be run.


Macro Dialog Box  : End Dialog Box

Checking this control presents a dialog box indicating the macro has finished running. This control is not displayed  for macros that launch applications as well as some other special purpose macros.


Macro Dialog Box : Mouse Relative To

Each mouse event has a set of coordinates associated with it that can be relative to either the upper left corner of the entire Windows screen or the upper left corner of the application's workspace area (default). You will rarely need to make the coordinates relative to the Windows screen.


Macro Dialog Box : Record Events

This control allows you to select the type of events you wish to record. Note that Mouse Moves, by default, are not recorded. You must explicitly select this type of input event becaue in the majority of cases it does not contain any vital information. An example of when you might want to record mouse movements is when you are recording a macro that draws a picture.


Macro Dialog Box : Playback Speed

This control allows you to change the speed at which a macro is played back. Playback speed is stated as a percentage of the recorded speed. Note that an entry of "0" in this field causes the macro to play back as fast as possible (i.e., the time interval between events is 0 seconds).

Most macros can be run at the fastest possible speed, although there may be cases where this is not desirable. See Macro Timing Issues.


Macro Dialog Box : Write Protect

This set of controls allows the macro associated with this dialog box to be write protected. Checking the box protects the current object's macro from deletion, re-recording or editing.; all other attributes, such as comment, Button face, etc. may still be altered. Lock and Unlock All toggles write protection for all macros assigned to this type of record/playback object.


Button Face Window

The Button Face Window allows you to select a new Button face from either the Button Macro Dialog Box or from the Pixel Editor. You are prompted to select a Button file before its Button Face Window is displayed.


Editing Ribbons

You may edit a Ribbon by inserting and deleting buttons, changing the grouping of the buttons and rearranging buttons. These operations are achieved through the Ribbon Edit Menu.


Macro Edit Window

You can edit macros in text form through the Macro Edit Window and have control over events as well as the time intervals between those events. Click on areas of the window below for detailed information on the controls.

See Macro Editing for details on the syntax of the editing process.

See Macro Timing Issues for information on when to use the Timing Mode.


Macro Timing Issues

This section is not essential for the effective recording, using and editing of macros. You may bypass this section completely or until you are sufficiently comfortable with using macros.

When you record a macro, you are also recording the time interval between the events. You may, however, want to play the macro back at a much faster speed than that at which it was recorded. On the other hand, some macros may run correctly only when played back at their recorded speed. Here we discuss some general issues about macro timing and its importance in editing macros.

There are two ways to alter a macro's playback speed; through the Playback Speed control on the various Macro Dialog Boxes and by controlling the timing intervals when compiling it. The first method affects the playback speed at the time the macro is run and applies to all events in the macro. The second method affects the timing values at compile time and gives you control on an event-by-event basis.

The Playback Speed control in the Macro Dialog Boxes simply multiplies the current intervals between each event by the appropriate value to obtain the desired playback speed percentage. Setting this percentage to "0" reduces the interval between events to zero seconds, thereby running the macro at the fastest speed.

The timing intervals between events is more complicated when editing macros is introduced. You may edit macros with the Timing Mode "On" or "Off." This mode is selected via the Time | Show Time menu item in the Macro Editing Window.  If the timing mode is on, the current Threshold and Intervals are displayed in a status line within the window.

Compiling with Timing Mode Off

If you compile a macro with the Timing Mode off, a default timing value is used as the Interval between all events. This timing value is 60 ms and allows control over it on a macro-by-macro basis. This value is changed through the Time | Interval menu item in the Macro Editing Window.

Compiling with Timing Mode On

Compiling with the Timing Mode on is important when you want to a pause between events in a macro, or when the macro must be run at its recorded speed. The editing of macros in this mode is a little more difficult than with the Timing Mode off since _time statements will be scattered throughout the editing session.

If you compile a macro with the Timing Mode on, each event may be followed by a _time x statement, where x is the number of milliseconds before the next event occurs. You can set the Threshold value to determine which events have a time statement associated with them. This value is changed through the  Time | Threshold menu item in the Macro Editing Window. When compiling, any event with a time statement after it uses that as the delay before the next event occurs. For events below the Threshold, the Interval is used as the default time value. You can change the Interval  through the Time | Interval menu item in the Macro Editing Window.


Keyboard Macro Dialog Box : List Box

This is a list of all the keyboard macros defined for this Ribbon. The characters a, c and s are used to represent Alt, Control and Shift, respectively when they are used as lead keys. These lead characters can be placed before or after the key name to establish two different sorting sequences. Click on the Legend to change this order.


Keyboard Macro Dialog Box : Legend

Click on the Legend to change the sort order of the List Box.


Keyboard Macro Dialog Box : Macro Count

This control shows the number of keyboard macros assigned to this Ribbon.


Keyboard Macro Dialog Box : Key

Keyboard Macro Dialog Box : Primary Key

This control selects the Primary Key that runs the macro. When this control has input focus, simply press the key to which you want to assign a macro. The key, or a text name for the key (eg. _Insert), appears in the control field.  You may also specify Lead Keys that must be pressed in conjunction with the Primary Key in order to run the macro.


Keyboard Macro Dialog Box : Lead Keys

You may select any combination of Lead Keys (including none) that must be held down while the Primary Key is pressed to run a macro.


Mouse Button Select

This control allows the mouse button represented by this dialog box to be assigned a macro. You cannot assign a macro to the Primary Mouse button (typically the left button).


Desktop Ribbon

You can create a Desktop Ribbon to launch your most frequently used applications and utilities. It can be anchored to the desktop, its location determined by the Ribbon Placement setting in the Ribbon Options dialog box, or floated like any other Ribbon.

With another Ribbon Options control, Desktop Ribbon Always On Top,  you can keep the Desktop Ribbon always on top of active windows. If the Desktop Ribbon is anchored and always on top, maximizing a Windows application resizes it to fill the screen, less the area occupied by the Ribbon. This resizing may not occur with all sub windows generated by the application's main window.

The procedure for creating a Desktop Ribbon is very similar to attaching a Ribbon to an application.

1.  Select Load from the Ribbon's Faceplate. The pointer becomes a cursor, its arrow indicating where it is OK to attach the Ribbon and where it is NOT.

2.  Position the pointer's crosshair anywhere in the background area of the screen that comprises the Windows desktop. The cursor should state that it is "OK" to attach a Ribbon.

3.  Single-click the left mouse button and a File Selection dialog box is displayed that lists all of the existing Ribbon files.

4.  Select the desktop.rcp file and that predefined Ribbon is installed on the desktop. You may add, remove and edit Buttons on the Desktop Ribbon as you would with any other Ribbon.


Macro Editing

When editing a macro, the macro is translated from memory to a text format. This process is known as decompiling the macro.

This text format is a combination of keywords that represent events such as non-printing keystrokes and mouse clicks, as well as literal text, such as a filename. To edit the macro you insert, delete or change keywords and literal text, then recompile the macro to memory. The decompiled macro is broken down into separate lines of keywords and literal text to simplify the editing process. Each type of line is treated differently by the compiler with all lines considered literal until a keyword is present.

In a literal line of text, all characters are compiled to macro events as they appear. This includes spaces, tabs and the trailing carriage return, if one is present. The one exception is if a tilde (~) is the last character of a literal line followed by a carriage return. In this instance, the carriage return is not translated as a macro event. A later example will illustrate why this exception exists.

In a keyword line, all spaces, tabs and the trailing carriage returns are ignored and not compiled to macro events. You can use  keyword equivalents (e.g., _space ) if you need these characters in a keyword line.

All keywords start with the underscore character (e.g., _pageUp) and are not case-sensitive. The keywords that are recognized by the macro editor are:

_altUp 	_altDown

_shiftUp 	_shiftDown

_controlUp 	_controlDown

_capsLock 	_numLock

_scrollLock 	_backspace

_insert 	_delete

_home 	_end

_pageUp 	_pageDown

_left 	_right

_up 	_down

_space 	_tab

_enter 	_escape

_time x	( x is in milliseconds)

_desktop

_execute  pathname, arguments, directory, x, y, width, height

_F n	( n is from 1 to 16 )

_mouseMove x,y

_LButtonUp x,y	_LButtonDown x,y

_MButtonUp x,y	_MButtonDown x,y

_RButtonUp x,y	_RButtonDown x,y

Most of these keywords are self explanatory. A few do require some elaboration, however:

• · _Space, _Enter or _Tab statements must be used to represent their respective macro events in keyword lines because their literal equivalents are ignored. For example:

_altDown _space _altUp

displays the Windows Control Menu.

• · An _F statement must be followed by a space and a number from 1 to 16 to represent a function key.

• · A _time statement indicates the interval (in milliseconds) before the next macro event occurs and allows pauses to be manually inserted between events. For example:

_time 1000

would pause 1 second before the next macro event is performed. See Macro Timing Issues.

• · The _desktop statement brings the Desktop Ribbon (assuming it has been created) to the top of the screen display.

• · The _execute statement can be used to launch one or more Windows applications. For example:

_execute calculator

_execute notepad

launches both Calculator and Notepad.

You can further specify the pathname, program arguments, the initial directory and the screen location of the application window. These statements take the form:

_execute pathname, arguments, initial directory, x, y, w, h

pathname is the full pathname of the application. The path list is searched if just the application name is entered.

arguments are application-dependent; if none exist, type noargs.

initial directory is the directory that is to be active; nodir specifies no directory.

x, y, w, h represent the screen coordinates (x,y), as well as the width and height measurements (in pixels), that specify the location of the application window.

For example:

_execute C:\windows\notepad, draft.txt

_execute paint, noargs, C:\graphics

_execute calendar, noargs, nodir, 100, 100, 200, 100

The following example illustrates the differences between using literal and keyword lines. Assume you want to create a macro that opens a dialog box, enters a filename and then closes the box using the Enter key. That macro might be represented as:

_altDown F O_altUp

myfile.txt

|

The edit cursor is on the line after the filename, indicating that the line ends with a carriage return.

Now assume you had the same macro as above, but wanted to use F2 instead of Enter to close the dialog box. This presents a problem because you want to keep the literal and keyword lines separate. A carriage return must follow the filename so that the F2 can be placed on the next line, yet you do not want the carriage return to be part of the macro.

A tilde (~) character at the end of a literal line causes the concluding carriage return (if any) to be ignored and not translated as part of the macro. Thus, this text example is displayed as:

_altDown F O_altUp

myfile.txt~

_F 2


Macro Edit : Timing Values

If the Macro Timing Mode is enabled (see Macro Timing Issues), the current values for the Threshold and Interval of the macro being edited are shown.


Macro Edit : Status Line

This line reports the status when compiling a macro and its successful completion. If an error occurs during the compile, it is reported here and the cursor normally will be placed at the source of the error.


Macro Edit : Selected Button

The face of the Button that is being edited. If you are editing a keyboard or mouse macro, the name of the object is displayed in the Edit windows caption bar.


Macro Edit : Edit Workspace

The workspace is the area where you edit the macro. See Macro Editing for details on the syntax of editing macros.


Macro Edit : Macro Menu Item

Compile:	Compiles the macro to temporary memory.

Exit:	Exits the window. If the macro text has been changed and not compiled, you are prompted to compile it before you can exit.

Cancel:	Cancels the edit operation and exits the window without saving any changes, even if you have compiled the macro..


Macro Edit : Edit Menu Item

Copy:

Cut:

Paste:

Del:

Undo:

Select All:	Select all of the


Macro Edit : Time Menu Item

Show Time:	When this item is checked, timing statements are added to the text for some, or all, of the decompiled statements.

Threshold:	Allows you to change the timing threshold for displayed events.

Interval:	Allows you to change the default timing interval between events that do not already have explicit timing statements.

See  Macro Timing Issues


Threshold

Threshold and Interval

When editing a macro with the Macro Timing Mode enabled, the Threshold is used to control which timing values are shown. Any timing values under the threshold are not shown in the edit window. When the macro is compiled, the Interval is used as the time value between subsequent macro events that do not contain an explicit time statement. See Macro Timing Issues.


Launching Applications

A Button can be used to launch a Windows or DOS application. If the chosen application is already running, it becomes the active window. Clicking on a Button that has an application assigned to it will launch (or switch to) that application. If the application is already running and you want to start another instance, hold the Shift key down while clicking the Button; if the application allows multiple copies, a new copy will be started.

The following is a discussion of the operations involved in setting program launches:

There are three ways to assign a Button macro to launch applications: through Program Manager, by file selection or through File Manager.

To create an Application launch or task switch to an application that resides within Program Manager:

1.  Activate Program Manager and open the group in which the target application resides. Its icon should be visible.

2.  Right-click on the desired User Button to display the Button Menu.

3.  Choose Set Launch followed by Program Manager and the pointer becomes the following cursor:

4.  Position the cursor on the desired application's icon and click the left mouse button (a right click cancels this operation).  A dialog box displays the file's launch properties and offers four compressed icons from which to choose.

5.  Select any icon representation (or None) and then click "Use for Ribbon Button Launch." The chosen compressed icon becomes the Button's face and the execute statement becomes its macro.

6.  Repeat the procedure to assign application launches to other Buttons.

Alternatively, you may specify a Pathname for launch using the standard Windows file selection procedure:

1.  Right-click on the desired Button to display the Button Menu.

2.  Choose Set Launch followed by Applications.... A Windows file selection dialog box is presented.

3.  Locate and highlight the application that is to be launched by the macro.

4.  Click Ok to assign the macro to the current Button.

Although setting up an application launch through Program Manager is the recommended method, you can also use File Manager. Note that any changes to the file's properties, such as specifying a different directory, must be made on the Macro Edit Window.

To create a Button macro to launch an application within File Manager:

1.  Make the File Manager the active window.

2.  Grab the desired application or data file by holding down the left mouse button. If a data file is specified, the host application must be associated with it or it will not launch. (See File Manager documentation for information on associations)

3.  Drag the file to the chosen User Button and then release to assign the application to the Button. You may also drag the file to the Ribbon's frame and release it there. In this case, a new Button is created and the application (or data file) assigned to it.


Save Ribbon

Selecting this entry saves the Ribbon to disk.


Inserting Buttons

You may insert buttons into a Ribbon at any time.  The insert function is accessed through the Ribbon Edit Menu.


Edit Button

Editing Button Faces

You may edit button faces with the built in pixel editor. You may access the Pixel Editor through the Button Shortcut Menu or the Ribbon Edit Menu.


Ribbon Edit Menu : Edit Button

Ribbon Edit Menu and Button Shortcut Menu : Edit Button

Selecting this control changes the mouse pointer into the following cursor:

Point the cursor to the Button you want to edit, left-click and the Pixel Editor is displayed.

Click the right mouse button to cancel the edit operation.


Ribbon Edit Menu : Insert Button

Selecting this control changes the mouse pointer into the following cursor:

Point the cursor to the the location in the Ribbon where you want a new Button and left-click. If the cursor is positioned in the Ribbon Frame, a new Button group will be created. If the cursor is placed on a Button, a new one is added to the current group on the specified side of the Button. For example, to add a Button between the second and third button in the following group click on the right side of the second Button, or the left side of the third:

After a Button is inserted, the "New" cursor remains to allow you to add more Buttons.  Click the right mouse button to end this operation at any time.


Ribbon Edit Menu : Drag Button

Selecting this control changes the mouse pointer into the following cursor:

Position the cursor on the Button you want, press the left mouse button and drag the Button either within the Ribbon or to another Ribbon. If you drop the Button within the current Ribbon, it is moved to that location; if you drop it in another Ribbon it is copied to that Ribbon. In either case, the Button's associated macro is also transferred.


Ribbon Edit Menu : Drag Group

Selecting this control changes the mouse pointer into the following cursor:

Position the cursor on the Button in the group you want, press the left mouse button and drag the group either within the Ribbon or to another Ribbon. If you drop the group within the current Ribbon, it is moved to that location; if you drop it in another Ribbon it is copied to that Ribbon. In either case, all of the macros associated with the group's Buttons are also transferred.


Ribbon Edit Menu : Split/Join Group

Selecting this control changes the mouse pointer into the following cursor:

Position the cursor between two Buttons and click the left mouse button. If the two Buttons are currently joined, they will be split; if currently split, they will be joined. A right mouse click ends this operation.


Ribbon Edit Menu : Delete Button

Selecting this control changes the mouse pointer into the following cursor:

Left-click on a Button and you are prompted to confirm its deletion. The cursor remains in the "delete" state to allow you to delete other Buttons, but you will not be allowed to delete a Button that contains a locked macro. Right-click the mouse to end the delete operation.


User Buttons


Button Shortcut Menu : Button Macros...

This menu selection displays the Button Macro Dialog Box.


Button Shortcut Menu : Record Macro

This menu selection begins recording a macro for the specified Button. That Button flashes to indicate that your inputs are being recorded. Left-click on the flashing Button, or press the Ctrll and Break keys simultaneously, to end recording. This menu selection is preceded by a check if the Button already has a macro assigned to it.

To set other parameters for a Button or macro, see Button Macro Dialog Box.


Button Shortcut Menu : Edit Macro...

This menu selection displays the Macro Edit Window, allowing the macro to be edited in a text format.


Button Shortcut Menu : Ask Repeat

Checking this menu item prompts you for the number of times the macro should run each time it is invoked . Otherwise, the macro will run the number of times specified in the Button Macro Dialog Box.


Button Shortcut Menu : Setup Launch

This menu selection allows you to assign an application launch to a Button. See Launching Applications for details.


Pixel Editor : Drawing Area

This is a magnified bitmap image of the current button face. You may edits the pixels in this image.


Pixel Editor : Current Bitmap

This is the actual size of the button face that is being edited, reflecting current changes.


Pixel Editor : Reload

Erases any editing changes and restores the original button face.


Pixel Editor : Draw

Specifies that a mouse click, left or right,  in the magnified area will fill one pixel with the color assigned to the mouse button.


Pixel Editor : Fill

Specifies that a mouse click, left or right, in the magnified area will fill an entire field with the color assigned to the mouse button.

A field is an area of solid color bounded by other colors. All pixels of the field color that are directly connected to the field are part of the field.


Pixel Editor : Left/Right

Displays the colors assigned to the left and right mouse buttons.


Pixel Editor : Shift Buttons

Scrolls the bitmap in the respective direction. If you have scrolled part of the bitmap off of the image, use Undo to revert to the pre-scroll image.


Pixel Editor : Pallete

Pixel Editor : Color Palette

Allows one of 16 colors to be used to draw or fill pixels. Click with the Left or Right mouse button to select the desired color.


Pixel Editor : Save

Saves the current bitmap as the Button face and exits the Pixel Editor.


Pixel Editor : Exit

Exits the dialog box. If the image has changed and has not been saved, you will be prompted to save.


Pixel Editor : Cancel

Exits the dialog box, discarding any changes.


Pixel Editor : Source Bitmap Size (16x16)

This identifies the size of the source rectangle when lifting bitmaps. The source rectangle is the size of the area you are lifting from the screen to use as a button face. This size will then be scaled to the size of the button face (16 x 16 pixels). By selecting  this control you may change the source rectangle size.

Note that the larger the size of the source rectangle the more distortion when scaling the bitmap to the size of a button face.


Pixel Editor : Lift

Hides the Pixel Editor and displays a rectangle the size of the source bitmap. You may place this rectangle anywhere on the screen.  The following mouse and key actions perform these operations:

Left Mouse Click:	Select the source bitmap.

Esc:	Cancel the operation.

Space:	Show a magnified image of the source bitmap.

When a magnified image is displayed, the following operations are also available:

Arrows:	Scroll the source bitmap 1 pixel in the specified direction.

Home:	Scroll the source bitmap 16 pixels to the right.

End:	Scroll the source bitmap 16 pixels to the left.

Pg Up:	Scroll the source bitmap 16 pixels up.

Pg Down:	Scroll the source bitmap 16 pixels down.

Enter:	Select the source bitmap.


Pixel Editor : Make

Allows you to make a rectangle of any size on the screen for use as a source bitmap when creating a Button face. The area captured by this operation is scaled to the size of a Button face (16 x 16 pixels). Note that the larger the size of the source bitmap, the more distortion when scaling the bitmap to the size of a Button face.

Selecting this control turns the pointer into a MAKE cursor.    Position the cursor at the upper left corner of the image you wish to use. Press and hold the left mouse button. Drag the rectangle corner to the lower right of the image and release the left mouse button. The image selected will be scaled to Button face size and displayed in the Pixel Editor dialog box.


Pixel Editor : Undo

Undoes the last command.


Pixel Editor : Change Face

Allows Button faces to be changed. Alternate Button faces may be selected from a Button file. A set of Button files are supplied with the RibbonCB program  disk or you can create your own (see Button Face Window).


Dragging Buttons

You may drag buttons from one Ribbon to another or within the same Ribbon. Access the drag and drop functionality through the Ribbon Edit Menu.


Changing a Button Face

You may change the face of a button through the Button Macro Dialog Box or the Pixel Editor.

Access the Button Macro Dialog Box through the Ribbon Frame Menu or the Button Shortcut Menu.

Access the Pixel Editor through the Button Shortcut Menu or the Ribbon Edit Menu.

RibbonCB came with a number of button files containing buttons for you to use. You may also create your own by drawing buttons or capturing bitmaps off the screen.


Macro Dialog Boxes

There are three Macro Dialog Boxes, one for each type of macro that can be recorded. These are the Button Macro Dialog Box, the Keyboard Macro Dialog Box and the Mouse Macro Dialog Box. These dialog boxes give you access to the various parameters and controls associated with the macros.


Application Links

Each time you attach a Ribbon to an application you are making a link to that application. When ever that application is executed and RibbonCB is running, the link will become active and that applications Ribbon will load. You may temporarily disable the link or delete the link entirely through the Applications Links Dialog Box.


Copying Ribbon Files

Normally, RibbonCB maintains  internal databases that contain information about the Ribbons. You have the option though of making a copy of a Ribbon database to use for archiving purposes or to give to another user of RibbonCB. You may do this through the Application Links Dialog Box.


Deleting a Ribbon

When you break a link between an application and a Ribbon, the internal database files will be deleted from the users computer. You may want to make a copy of the database files before you delete them. If you don't copy them and break the link, the database files will be lost. You may copy and delete through the Application Links Dialog Box.


Macro Properties

Macro properties are are a set of conditions that hold when recording or running macros. These conditions are things such as which events are to be recorded during a record session or how fast the macro is to be played back. You can change macro properties through any of the three Macro Dialog Boxes; the Button Macro Dialog Box, the Keyboard Macro Dialog Box or the Mouse Macro Dialog Box.


Recording Macros

You can assign macros to three types of objects in the Ribbon; User Buttons in the Ribbon itself, keyboard combinations and mouse buttons. The recording process is similar for all three. Each object has a dialog box associated with it. These are the Button Macro Dialog Box, the Keyboard Macro Dialog Box and the Mouse Macro Dialog Box.  You initiate the recording from these dialog boxes.

1. Open any of the dialog boxes.

2. Select the User Button, key combination or mouse button you wish to record to.

3. Press the Start Recording button in the dialog box. The dialog box will be hidden and following visual feedback will occur letting you know a recording session is in progress:

User Button:	The button will toggle

Keyboard Macro:	A "K" will appear in a cyan window in the Ribbon

Mouse Macro:	A "M" will appear in a cyan window in the Ribbon

4. Do your sequence of keystrokes and mouse operations.

5. End the recording session by clicking on the toggling Button or click in the "M" or "K" window. You may also universally end recording by pressing Control-Break.

For User Buttons you may bypass the Button Macro Dialog Box and use the Button Shortcut Menu to record a macro. Here you simply bring up the menu by right clicking on a User Button. Pick Record Macro from the menu and the Button will toggle. Do your operations and then click on the Button or press Control-Break.


Ribbon Edit Menu : Save Ribbon

This item saves the ribbon and all of it's properties to disk.


Ribbon Edit Menu : Create Tab

This item allows you to create a tab. See Working With Tabs for information on tabs.


Ribbon Edit Menu : Hide Tabs
Ribbon Edit Menu : Hide/Show Tabs

This allows you to hide or show the tabs. You may also hide the tabs by holding down the left mouse button in the ribbon frame and dragging upward across the top border. Likewise you may show the tabs by dragging down across the lower edge of the frame.

See Working With Tabs for information on tabs.